package sv.ues.fia.activities;

import java.util.List;

import sv.ues.fia.R;
import sv.ues.fia.bdcontrol.ControlBDHelper;
import sv.ues.fia.clases.MyDateFormat;
import sv.ues.fia.entity.Perfil;
import sv.ues.fia.entity.Tipo;
import sv.ues.fia.entity.TrabajoGraduacion;
import sv.ues.fia.session.UsuarioActual;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
import android.app.Activity;

public class PerfilUpdateActivity extends Activity {
	ControlBDHelper dbHelper;

		@Override
		public void onCreate(Bundle saved) {
			super.onCreate(saved);
			
			dbHelper = new ControlBDHelper(this);
			
			Perfil perfilRecibido = (Perfil)UsuarioActual.getOBJECT();
			
			List<TrabajoGraduacion> listTG = null;
			List<Tipo> listTipo = null;
			
			setContentView(R.layout.activity_perfil_modificar);
			
			final EditText edtIdPerfil= (EditText)findViewById(R.id.idUpPerfil);
			final EditText edtTemaPerfil= (EditText)findViewById(R.id.edtTemaPerfil);
			final Spinner spTipoPerfil= (Spinner)findViewById(R.id.spinnerTipoPerfil);
			final Spinner spinnerTG= (Spinner)findViewById(R.id.spinnerTG);
			final EditText edtDescPerfil= (EditText)findViewById(R.id.edtDescripPerfil);
			final DatePicker datePerfil= (DatePicker)findViewById(R.id.datePerfil);
			
			TextView actualDate = (TextView)findViewById(R.id.actualDate);
			TextView actualType = (TextView)findViewById(R.id.actualType);
			TextView actualTG = (TextView)findViewById(R.id.actualTG);
			
			Button btnUpdate = (Button)findViewById(R.id.btnUpdatePerfil);
			
			edtIdPerfil.setText(String.valueOf(perfilRecibido.getIdPerfil()));			
			edtTemaPerfil.setText(perfilRecibido.getTemaPerfil());
			edtDescPerfil.setText(perfilRecibido.getDescripcionPerfil());
			
			String previusLabel = PerfilUpdateActivity.this.getString(R.string.previus);
			actualDate.setText(previusLabel+" "+perfilRecibido.getFechaEntregaPerfil());
			actualType.setText(previusLabel+" "+perfilRecibido.getIdTipo());
			actualTG.setText(previusLabel+" "+perfilRecibido.getIdTG());
			
			
			dbHelper.abrir();
			listTG = dbHelper.consultarTG("");
			listTipo = dbHelper.consultarTipo("", "");
			dbHelper.cerrar();
			
			ArrayAdapter<Tipo> spinnerTipoAdapter = new ArrayAdapter<Tipo>(
					this,
					android.R.layout.simple_spinner_dropdown_item, listTipo);
			
			spTipoPerfil.setAdapter(spinnerTipoAdapter);
			
			ArrayAdapter<TrabajoGraduacion> spinnerTGAdapter = new ArrayAdapter<TrabajoGraduacion>(
					this,
					android.R.layout.simple_spinner_dropdown_item, listTG);
			spinnerTG.setAdapter(spinnerTGAdapter);
			
			btnUpdate.setOnClickListener(new View.OnClickListener() {
				
				@Override
				public void onClick(View v) {
					
					TrabajoGraduacion selectedTG = (TrabajoGraduacion) spinnerTG.getSelectedItem();
					Tipo selectedTipo = (Tipo) spTipoPerfil.getSelectedItem();
					
					int day = datePerfil.getDayOfMonth();
					int month = datePerfil.getMonth();
					int year = datePerfil.getYear();

					String formatedDate = MyDateFormat.formatDate(year, month, day);
					
					Perfil oldPerfil = new Perfil();
					
					oldPerfil.setIdPerfil(Integer.valueOf(edtIdPerfil.getText().toString()));
					oldPerfil.setIdTG(selectedTG.getIdTG());
					oldPerfil.setIdTipo(selectedTipo.getIdTipo());
					oldPerfil.setTemaPerfil(edtTemaPerfil.getText().toString());
					oldPerfil.setDescripcionPerfil(edtDescPerfil.getText().toString());
					oldPerfil.setFechaEntregaPerfil(formatedDate);
					
					dbHelper.abrir();
					Toast.makeText(PerfilUpdateActivity.this, dbHelper.modificar(oldPerfil),
							Toast.LENGTH_SHORT).show();
					dbHelper.cerrar();
					
					UsuarioActual.setOBJECT(null);
					
					PerfilUpdateActivity.this.finish();
										
				}
			});
			
		}
	}
